
import { createRouter, createWebHistory,createWebHashHistory } from 'vue-router';
import testRouter from './test'
import tools from '@/lite/utils/tools'
import systemRoute from './test.js';
import userStore from '@/app/admin/store/user'
// 系统静态路由
const routes = [
    { name:'Login',path: '/login', component: () => import('@/app/admin/views/login/index.vue'), },
    { name:'layout',path: '/', component: () => import('@/lite/layout/index.vue'), },
    // { name:'profile',path: '/profile', component: () => import('@/app/admin/views/user/profile.vue'), },

];

routes.push(...systemRoute);



routes.push(testRouter)
const router = createRouter({
    // 4. 内部提供了 history 模式的实现。为了简单起见，我们在这里使用 hash 模式。
    history: createWebHashHistory(),
    routes, // `routes: routes` 的缩写
  })

// 路由前置
router.beforeEach(async (to, from,next) => {
   
    
    // 判断是否有登录
    let token = tools.storage.get('token')
    if(!token && to.name !== 'Login'){
       // 将用户重定向到登录页面
       router.push('/login')
        return;
    }
    if(token && userStore.state.routes.length ==0){
        await userStore.dispatch('profile')
        next({...to,replace: true})
    }
    next()
    // if (
      // 检查用户是否已登录
    //   !isAuthenticated &&
      // ❗️ 避免无限重定向
    //   to.name !== 'Login'
    // ) {
    //   // 将用户重定向到登录页面
    //   return { name: 'Login' }
    // }
  })
export default router